1. Field of the Invention
The present invention relates generally to computer systems having a graphical user interface. More particularly, the invention pertains to a method and apparatus for manipulating and displaying graphical objects in an object oriented computing environment.
2. Description of the Prior Art
Graphical user interfaces employing an object-oriented programming paradigm are commonly used in application programs such as word processing and database programs, as well as other graphic desktop applications. A graphical user interface provides manipulable graphical objects such as icons, windows, and various controls that can be used to control underlying software or hardware represented by the graphical objects. Typically, a user interacts with the graphical user interface using a graphical pointer that is controlled by a pointing device, such as a mouse or trackball, to accomplish conventional drag and drop techniques and other graphical object manipulations.
The conventional object-oriented, graphical user interface provides an effective manner to monitor and control underlying components represented by the graphical objects. However, applications that display animation or graphical movement between connected components have required the assistance of computer programmers and specially designed custom software. Examples of such applications are computer simulation programs, mechanical emulation programs, and user display or control applications that graphically display moving components of an automated process. Accordingly, these programs are typically difficult and expensive to develop making them generally unavailable to many industries and possible applications.
As will be described in greater detail hereinafter, the method and apparatus of the present invention solves the aforementioned problems by employing an object oriented paradigm to represent connectable graphical objects and employs a number of novel features that render it highly advantageous over the prior art.
Accordingly, it is an object of this invention to provide a system and method for manipulating and displaying graphical objects.
Another object of this invention is to provide a method for displaying graphical objects that are operatively connected to one another so that their representations do not become distorted after repeated movement.
Still another object of this invention is to provide a method and apparatus which can be easily used by systems engineers or designers to provide applications having graphical objects virtually connected to one another to form new graphical objects that can be moved or manipulated in a display device without having to rely upon the assistance of computer programmers and specially designed custom software.
To achieve the foregoing and other objectives, and in accordance with the purposes of the present invention a method and apparatus of manipulating and displaying graphical objects on a computer display device of a computer system are provided. The computer system preferably includes the display device, a processor, and memory for storing created graphical objects. In one embodiment, the graphical object comprises a plurality of child graphical objects where both the parent and children graphical objects have a property corresponding to the orientation of a representation of the respective graphical object.
In accordance with an aspect of the invention, a connection tree will be formed by scanning the graphical object to traverse through each of the child graphical objects. The connection tree will contain the initial values of each property of the graphical objects. In use, the property values will become altered which correspond to a change in the position of the representation of the respective graphical object. The change of position is then broadcast down the connection tree and the property values of respective graphical objects are recalculated based on the initial and altered value.
Other objects, features and advantages of the invention will become more readily apparent upon reference to the following description when taken in conjunction with the accompanying drawings, which drawings illustrate several embodiments of the invention.